package algorithm.sort;

import java.util.Arrays;

/**
 * 选择排序
 * 第一趟选择最小的数字放在0的位置，第二趟选择最小的数字放在1的位置，以此类推
 * http://www.cnblogs.com/shen-hua/p/5424059.html
 */
public class SelectionSortTest {
    public static void main(String[] args) {
        int[] arr = {6,3,8,2,9,1,4};
        sort(arr);
        System.out.println("result arr = " + Arrays.toString(arr));
    }

    public static void sort(int[] arr){
        for(int i = 0; i < arr.length; i++){
            System.out.println("arr = " + Arrays.toString(arr));
            boolean change = false;
            int minIndex = i;
            for(int j = i + 1; j < arr.length; j++){
                if(arr[minIndex] > arr[j]){
                    minIndex = j;
                    change = true;
                }
            }
            if(change){
               int temp = arr[i];
               arr[i] = arr[minIndex];
               arr[minIndex] = temp;
            }
        }
    }
}
